perm filename ARM.NSF[DOC,TOB] blob
sn#043021 filedate 1973-05-10 generic text, type T, neo UTF8
C. MANIPULATOR DEVELOPMENT
Manipulator research began at the Stanford Artificial Intelligence
Laboratory in 1965 with the acquisition of a Rancho Orthotic Arm.
This arm was interfaced in such a way that the computer could read
the joint positions by means of potentiometers and drive the arm by
means of a voltage, pulse rate modulated signal for each joint. Two
solution programs were written: one to give the rectangular
coordinate position of the hand knowing the six joint angles, and one
to give the joint angles knowing the desired x,y,z position and
orientation of the hand. These programs were then combined with a
servo program to move the hand.
The servo program represents two key concepts of all subsequent
manipulator research at this laboratory:
1) To provide a digital computer with all sensory inputs, initially
joint positions, but later velocity, force and touch measurements.
2) The utilization of a programable digital computer to take the
sensory inputs and to provide basic control output to the
manipulator, in our case joint torque.
Initially the sensory input of joint angles was to provide a position
servo with a sampling rate of 60 cycles per second. The arm control
has been changed many times since, a simple task in the case of a
program, but difficult in the case of a hard wire servo system. This
system was used by Wichman, Pingle and Singer in 1968 to provide a
program which could pick-up sort and stack blocks, and in a first
attempt at visual feedback.
At this time Piper considered the kinematics of manipulators and
developed a classification scheme for all possible arms and their
analytic solvability. He concluded his work by implementing a
trajectory based collision avoiding program. Although slow, this work
demonstrated the need for trajectory control of the arm.
Kahn followed Piper with a study of the dynamics of manipulators and
developed a "bang-bang" servo for a new hydraulic arm. This arm,
still at the laboratory, was developed as a high performance
manipulator.
By 1970 a general purpose block program was implemented capable of
manipulating plane faced bodies. This program was used in the initial
version of the "Instant Insanity" program where all possible
reorientations of the four colored cubes were required in the puzzle
solution.
Our present arm, the result of a continuing design project, replaced
the Rancho Arm in 1970. This arm, like its predecessor is controlled
by a digital servo program running under the time sharing system. The
new arm was used in the "Instant Insanity" demonstration in 1971.
As this arm is driven by electric motors through high efficiency gear
reductions it is possible to predict the torque exerted at each joint
in terms of drive level. Based on kinematic analysis it is possible
to calculate the joint torques necessary to produce a given force at
the hand. Further, for the hand to exhibit degrees of freedom of
motion, various joints are selected to be "free," that is, to have no
position feedback applied to them. By exerting a force at the hand
and providing that certain degrees of freedom exist it is possible to
perform a much wider class of tasks than simple positional control,
for instance screwing in screws, mating parts, inserting tools and
turning cranks.
Touch sensors on the fingers allow the hand to sense objects without
disturbing them. When activated the arm will stop when any of the
sensors touch. Branching arm instructions can test the state of the
sensors and modify the execution of an arm program. When screwing a
nut onto a bolt, for instance, the hand is first centered over the
bolt by touching it.
A second arm of the same type, with only minor modifications, is
currently being interfaced to the computer. Both arms will share a
common work space and will be able to be used individually, or
together for two-handed tasks. This should increase the scope of our
manipulation work by some orders of magnitude. It may be possible for
many assembly workers to work with their eyes closed but it would not
be possible, in most cases, to work with only one arm, as we are
currently doing.
Control of the arms is achieved by a series of high level
instructions; these instructions may be executed directly, or may be
assembled together into an arm program. Arm programs may then be
executed, as desired, by the control program. The control
instructions may be accessed directly by other programs, using the
message procedure mechanism, or in the form of a symbolic source
file.
Positional accuracy at the hand is typically 0.1 inches with
repeatability of 0.02 inches. Force control at the hand is within 10
ounces. The data rate to run the arm from an assembled arm program is
of the order of 100 bits/second.
Manipulator research moves ahead simultaneously on three fronts:
control, primitives and devices. Tasks are translated into an
existing hand language and where the task cannot be accomplished in
terms of existing primitives, new primitives are formulated in a
consistent manner. When a new primitive is formulated, real time
routines are developed to perform the action. This also leads, in
many cases, to the development of new hardware. Also as new
developments occur in hardware design, existing real time routines
are either re-written or modified.
Research is now concentrating on the following areas: To provide
strain gauge instrumentation of the wrist, in order to allow for more
sensitive interaction of the hand with a task. The development of
high resolution, high sensitivity touch sensors, to increase tactile
recognition and control abilities. These developments will lead in
turn to new control concepts.
Development of tools for the hand. These tools can be instrumented
such that the computer can feel and or see at the end of the tool.
This should be a very important area of research as it goes beyond
present human capabilities.
Two handed arm control, the planning and execution of tasks requiring
the coordinated motion of both arms, will require an extension of the
existing servo program and the analysis of synchronization problems.
The development of collision avoiders, so that arms will not collide
with other objects and with each other.
Modification of the existing arm design to provide for better
incremental motions, more degrees of freedom and a more rugged design
suitable for industrial use. Development of arm and eye computer
interfaces. These contain synchronized analog/digital converters for
input and current controlled drivers for output.
The development of new hands is expected as more complex tasks are
attempted. At present, with only one hand, we have been performing
the positioning type of hand actions. When the second arm is
operational we will be able to perform holding and pulling actions as
well.